package cn.iocoder.yudao.module.shop.staff.pojo.dto;

import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.validation.InEnumValue;
import cn.iocoder.yudao.module.api.shop.staff.enums.ShopStaffRoleEnum;
import cn.iocoder.yudao.module.api.shop.staff.enums.ShopStaffStatusEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "店员分页 Request VO")
@Data
public class ShopStaffPageDTO extends PageParam {

    @Schema(description = "店铺编号", example = "26294")
    private Long shopId;

    @Schema(description = "类型：0-普通店员、1-店主、2-核销员、3-配送员、4-收银员")
    @InEnumValue(ShopStaffRoleEnum.class)
    private Integer role;

    @Schema(description = "类型：0-空闲、1-忙碌、2-休息")
    @InEnumValue(ShopStaffStatusEnum.class)
    private Integer status;

    @Schema(description = "姓名", example = "羡民")
    private String contactName;

    @Schema(description = "电话", example = "15285116029")
    private String contactMobile;

    @Schema(description = "前台用户编号", example = "25347")
    private Long memberUserId;

    @Schema(description = "后台用户编号", example = "22975")
    private Long adminUserId;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}